Many computer systems such as personal computers (PCs) use memory modules as their main memory. Memory modules may be tested using PC-motherboard-based testers. Servers may use many memory modules.
When a memory modules fails on a server, it can be difficult to determine which of the many memory modules has failed. A software tool such as a memory diagnostics program can be executed on the server to write and read locations in the memory. However, these memory diagnostic programs access virtual or logical addresses, rather than the physical addresses of the memory modules.
The operating system (OS) running on the server (in conjunction with BIOS) may remap logical addresses while the processor and chips such as a north bridge chip translate logical addresses from the processor to physical addresses. While the address translation is deterministic, it may not be known to the end user, since manufacturers often keep address translation as a trade secret.
When a memory diagnostics program is executed on a processor or Central Processing Unit (CPU), a sequence of logical addresses are written and read back. Mismatched data read back indicates a faulty memory location within the logical address space. Since the mapping from the logical address space to the physical address space and the memory modules is not known to the user, it cannot be readily determined which memory module is malfunctioning despite the memory diagnostic program having located the error by its logical address. A technician cannot easily determine which of the many memory modules to replace despite running the memory diagnostic program and may have to replace memory modules one by one until the problem is fixed.
What is desired is a diagnostic method that can identify which memory module is malfunctioning. An extender card with a visual indicator is desired to show which memory module is malfunctioning when a memory diagnostic program is executed.